this._keyboardIndex = -1;
this._hotCorners = [];
this._background = null;
- this._leftPanelBarrier = 0;
- this._rightPanelBarrier = 0;
+ this._leftPanelBarrier = null;
+ this._rightPanelBarrier = null;
this._inOverview = false;
this._updateRegionIdle = 0;
},
_updatePanelBarriers: function() {
- if (this._leftPanelBarrier)
- global.destroy_pointer_barrier(this._leftPanelBarrier);
- if (this._rightPanelBarrier)
- global.destroy_pointer_barrier(this._rightPanelBarrier);
+ if (this._leftPanelBarrier) {
+ this._leftPanelBarrier.destroy();
+ this._leftPanelBarrier = null;
+ }
+
+ if (this._rightPanelBarrier) {
+ this._rightPanelBarrier.destroy();
+ this._rightPanelBarrier = null;
+ }
if (this.panelBox.height) {
let primary = this.primaryMonitor;
- this._leftPanelBarrier =
- global.create_pointer_barrier(primary.x, primary.y,
- primary.x, primary.y + this.panelBox.height,
- 1 /* BarrierPositiveX */);
- this._rightPanelBarrier =
- global.create_pointer_barrier(primary.x + primary.width, primary.y,
- primary.x + primary.width, primary.y + this.panelBox.height,
- 4 /* BarrierNegativeX */);
- } else {
- this._leftPanelBarrier = 0;
- this._rightPanelBarrier = 0;
+
+ this._leftPanelBarrier = new Meta.Barrier({ display: global.display,
+ x1: primary.x, y1: primary.y,
+ x2: primary.x, y2: primary.y + this.panelBox.height,
+ directions: Meta.BarrierDirection.POSITIVE_X });
+ this._rightPanelBarrier = new Meta.Barrier({ display: global.display,
+ x1: primary.x + primary.width, y1: primary.y,
+ x2: primary.x + primary.width, y2: primary.y + this.panelBox.height,
+ directions: Meta.BarrierDirection.NEGATIVE_X });
}
},
meta_plugin_end_modal (global->plugin, timestamp);
}
-/**
- * shell_global_create_pointer_barrier:
- * @global: a #ShellGlobal
- * @x1: left X coordinate
- * @y1: top Y coordinate
- * @x2: right X coordinate
- * @y2: bottom Y coordinate
- * @directions: The directions we're allowed to pass through
- *
- * If supported by X creates a pointer barrier.
- *
- * Return value: value you can pass to shell_global_destroy_pointer_barrier()
- */
-guint32
-shell_global_create_pointer_barrier (ShellGlobal *global,
- int x1, int y1, int x2, int y2,
- int directions)
-{
-#if HAVE_XFIXESCREATEPOINTERBARRIER
- return (guint32)
- XFixesCreatePointerBarrier (global->xdisplay,
- DefaultRootWindow (global->xdisplay),
- x1, y1,
- x2, y2,
- directions,
- 0, NULL);
-#else
- return 0;
-#endif
-}
-
-/**
- * shell_global_destroy_pointer_barrier:
- * @global: a #ShellGlobal
- * @barrier: a pointer barrier
- *
- * Destroys the @barrier created by shell_global_create_pointer_barrier().
- */
-void
-shell_global_destroy_pointer_barrier (ShellGlobal *global, guint32 barrier)
-{
-#if HAVE_XFIXESCREATEPOINTERBARRIER
- g_return_if_fail (barrier > 0);
-
- XFixesDestroyPointerBarrier (global->xdisplay, (PointerBarrier)barrier);
-#endif
-}
-
/* Code to close all file descriptors before we exec; copied from gspawn.c in GLib.
*
* Authors: Padraig O'Briain, Matthias Clasen, Lennart Poettering